<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Oatc.OpenMI.Sdk.DevelopmentSupport</name>
    </assembly>
    <members>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile">
            <summary>
            Support class for reading and writing objects to xml.
            Each object to be written or read is accessed in a generic way for the properties to write or read. This is done via an aggregate intermediate object.
            Objects are written once in an xml file. If they are encountered more than once, references are written. References may refer to other files.
            Writing and reading strings is always done and expected in neutral culture (English-US) in order to enable exchangability.
            Needed meta info is retrieved from MetaInfo.
            <seealso href="XmlFileMetaInfo.htm">MetaInfo used by XmlFile</seealso>
            <seealso cref="T:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate"/>
            <seealso cref="T:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo"/>
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.Read(System.Object)">
            <summary>
            Reads an object from file
            The file to read should have been registered with the object earlier by a reqad or write action
            </summary>
            <param name="target">The object to be read</param>
            <exception cref="T:System.Exception">Cannot find file to read</exception>
            <exception cref="T:System.Exception">Cannot resolve class type when an object for an xml element must be instantiated</exception>
            <exception cref="T:System.Exception">Cannot find class type</exception>
            <exception cref="T:System.Exception">Xml element holds a reference, but referenced object cannot be found</exception>
            <exception cref="T:System.Exception">Schema cannot be found although it has been specified in MetaInfo</exception>
            <exception cref="T:System.Exception">Validation error when xml file doesn't meet specified schema</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.Read(System.Object,System.IO.FileInfo)">
            <summary>
            Reads an object from file
            </summary>
            <param name="target">The object to be read</param>
            <param name="file">The file containing the object's information</param>
            <exception cref="T:System.Exception">Cannot find file to read</exception>
            <exception cref="T:System.Exception">Cannot resolve class type when an object for an xml element must be instantiated</exception>
            <exception cref="T:System.Exception">Cannot find class type</exception>
            <exception cref="T:System.Exception">Xml element holds a reference, but referenced object cannot be found</exception>
            <exception cref="T:System.Exception">Schema cannot be found although it has been specified in MetaInfo</exception>
            <exception cref="T:System.Exception">Validation error when xml file doesn't meet specified schema</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetRead(System.IO.FileInfo)">
            <summary>
            Reads and creates an object from a given file
            </summary>
            <param name="file">The file containig the object to be read</param>
            <returns>Populated object</returns>
            <exception cref="T:System.Exception">Cannot find file to read</exception>
            <exception cref="T:System.Exception">Cannot resolve class type when an object for an xml element must be instantiated</exception>
            <exception cref="T:System.Exception">Cannot find class type</exception>
            <exception cref="T:System.Exception">Xml element holds a reference, but referenced object cannot be found</exception>
            <exception cref="T:System.Exception">Schema cannot be found although it has been specified in MetaInfo</exception>
            <exception cref="T:System.Exception">Validation error when xml file doesn't meet specified schema</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetRead(System.IO.FileInfo,System.Type)">
            <summary>
            Creates and reads an object from a given file
            </summary>
            <param name="file">The file containig the object to be read</param>
            <param name="objectType">The expected class type of the new object</param>
            <returns>The new populated object</returns>
            <exception cref="T:System.Exception">Cannot find file to read</exception>
            <exception cref="T:System.Exception">Cannot resolve class type when an object for an xml element must be instantiated</exception>
            <exception cref="T:System.Exception">Cannot find class type</exception>
            <exception cref="T:System.Exception">Xml element holds a reference, but referenced object cannot be found</exception>
            <exception cref="T:System.Exception">Schema cannot be found although it has been specified in MetaInfo</exception>
            <exception cref="T:System.Exception">Validation error when xml file doesn't meet specified schema</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.ValidationCallBack(System.Object,System.Xml.Schema.ValidationEventArgs)">
            <summary>
            Callback method used for validation against an xsd file
            </summary>
            <param name="sender">Sender of the method</param>
            <param name="args">Error details</param>
            <exception cref="T:System.Exception">Validation error when xml file doesn't meet specified schema</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetSchema(System.Type,System.String,System.String)">
            <summary>
            Gets a stream containing an xsd file, which resides within an assembly.
            </summary>
            <param name="type">If the xsdPackage isn't defined, type in the assembly in which the xsd file should reside</param>
            <param name="xmlSchema">Name of the schema</param>
            <param name="xsdPackage">The assembly in which the xsd file resides</param>
            <returns>The xsd stream, null if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.Read(System.Xml.XmlReader,System.Object,System.Object,System.String,System.Object)">
            <summary>
            Reads the current xml element into an object.
            Then moves the xml stream forward to the next element.
            If the next element is one level deeper, that element is read by calling this method recursively.
            Finally the current element is positioned on the first unread element.
            By calling this method at the top level of an xml file, the whole xml file is read.
            </summary>
            <param name="reader">The xml stream</param>
            <param name="target">The object which will be populated with data within the current xml element</param>
            <param name="parent">The parent of the object, i.e. the object to which the target will be assigned</param>
            <param name="targetProperty">The property of the parent</param>
            <param name="root">The root object of the xml file</param>
            <exception cref="T:System.Exception">Read only property has null value, but a property of this object should be set according to the xml file</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetObject(System.Xml.XmlReader,System.Type,System.Object)">
            <summary>
            Gets the object associated with an xml element.
            Different procedures are followed for the following cases:
            1) The file is mentioned. Then that file is read and the top object (a.k.a. the root) of that file is returned
            2) The file is mentioned and the xml element is defined as a reference. Then that file is read (if not before) and the root of the file is asked for a property with the specified reference.
            3) The file isn't mentioned and the xml element is defined as a reference. Then the object is retrieved from the registration.
            4) Otherwise the object is instantiated
            </summary>
            <param name="reader">The xml stream</param>
            <param name="defaultType">The type to instantiate when no type is specified in the xml element</param>
            <param name="root">The top object of the xml stream</param>
            <returns>The object associated with the xml element</returns>
            <exception cref="T:System.Exception">Cannot resolve class type when an object for an xml element must be instantiated</exception>
            <exception cref="T:System.Exception">Cannot find class type</exception>
            <exception cref="T:System.Exception">Cannot instantiate object for known class type</exception>
            <exception cref="T:System.Exception">Xml element holds a reference, but referenced object cannot be found</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.ReadAttributes(Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate,System.Xml.XmlReader,System.Object)">
            <summary>
            Reads the attributes of the current xml element and uses them to populute the target with
            </summary>
            <param name="target">The object which is populated with the xml attributes</param>
            <param name="reader">The xml stream</param>
            <param name="root">Top object of the xml stream</param>
            <exception cref="T:System.Exception">Cannot find class type</exception>
            <exception cref="T:System.Exception">Cannot instantiate object for known class type</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.MoveToNextElement(System.Xml.XmlReader)">
            <summary>
            Moves the xml stream forward to the next readable element
            </summary>
            <param name="reader">The xml stream</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.CreateRegistration(System.Object)">
            <summary>
            Sets up registration tables for a root object
            </summary>
            <param name="root">The root object</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.RegisterObject(System.Object,System.Xml.XmlReader,System.Object)">
            <summary>
            Registers that an object is written to or read from the same file as a root object.
            This method calls RegisterKey internally.
            </summary>
            <param name="target">The object to register</param>
            <param name="reader">The xml stream</param>
            <param name="root">The object at the top of an xml file</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.RegisterKey(System.Object,System.Object,System.Object)">
            <summary>
            Registers an object with a unique key within the scope of the root.
            </summary>
            <param name="root">The root object</param>
            <param name="identifier">The unique key</param>
            <param name="target">The object to register</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetRegisteredKey(System.Object,System.Object)">
            <summary>
            Gets a key from registration given the object.
            The key will only be found if RegisterKey or RegisterObject has been called before.
            </summary>
            <param name="root">The root object, the scope where is searched for the object</param>
            <param name="target">The object to search for</param>
            <returns>The key, null if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetRegisteredTarget(System.Object,System.Object)">
            <summary>
            Gets an object from registration given the key.
            The object will only be found if RegisterKey or RegisterObject has been called before.
            </summary>
            <param name="root">The root object, the scope where is searched for the key</param>
            <param name="identifier">The key to search for</param>
            <returns>The associated object, null if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetRegisteredFile(System.Object)">
            <summary>
            Gets the file associated with an object.
            The object should be the root of the file, i.e. associated with the top xml element.
            </summary>
            <param name="anObject"></param>
            <returns>The file, null if the object isn't a root of a file</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetRegisteredObjects">
            <summary>
            Gets a list of all objects, whcih are known to be the root of a file.
            The root of a file is the object associated with the top xml element.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetFileObject(System.String)">
            <summary>
            Gets the root object of a file
            </summary>
            <param name="File">Full name of the file</param>
            <returns>The root object, null if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetForcedRegisteredFile(System.Object,System.IO.DirectoryInfo)">
            <summary>
            Gets the file registered with an object and if not found, a new file is created
            </summary>
            <param name="target">The object an associated file is searched for</param>
            <param name="dir">Directory in which a new file will be created, if no file exists</param>
            <returns>The associated file</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.DisposeObject(System.Object)">
            <summary>
            Removes an object of all registrations.
            To be used for releasing memory
            </summary>
            <param name="disposeObject">The object to be removed from registrations</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetAggregate(System.Object)">
            <summary>
            Gets the aggregate of an object.
            The aggregate is an object, which can be used for querying the object in a generic way.
            The MetaInfo attribute "ObjectAggregate" is used to identify the class type of the aggregate, if not present DefaultAggregate is used.
            The same aggregate object is reused when the same object is passed.
            <seealso cref="T:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate"/>
            <seealso cref="T:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo"/>
            </summary>
            <param name="target">The object an aggregate is asked for</param>
            <returns>The aggregate object</returns>
            <exception cref="T:System.Exception">Cannot find aggregate class type</exception>
            <exception cref="T:System.Exception">Cannot instantiate aggregate for known class type</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetKeyFromXml(System.Type,System.Xml.XmlReader,System.Boolean)">
            <summary>
            Gets a string from an xml file which uniquely identifies the object which is currently parsed
            This string reflects the identification of the object, e.g. the ID of the object
            </summary>
            <param name="TargetType"></param>
            <param name="reader">The xml file stream</param>
            <param name="referenced">Indication whether the current xml element refers to a prior definition of the object</param>
            <returns>The identification string</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetKeyFromObject(Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate,System.Object)">
            <summary>
            Gets the key from an object. 
            If the key isn't unique and the property allows for key generation, a unique key is generated.
            </summary>
            <param name="target"></param>
            <param name="root"></param>
            <returns></returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.Write(System.Object)">
            <summary>
            Writes an object to an xml file
            The registered file of the object will be used as xml file. This is the file
            to which the object was written to or read from in an earlier stage
            </summary>
            <param name="target">The object to be written</param>
            <exception cref="T:System.Exception">Cannot derive key for object which must be written as a reference. Probably MetaInfo is missing for the class and subject XmlKey</exception>exception&gt;
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.Write(System.Object,System.IO.FileInfo)">
            <summary>
            Writes an object to an xml file
            </summary>
            <param name="target">The object to write</param>
            <param name="file">The xml file</param>
            <exception cref="T:System.Exception">Cannot derive key for object which must be written as a reference. Probably MetaInfo is missing for the class and subject XmlKey</exception>exception&gt;
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.Write(System.Xml.XmlTextWriter,System.Object,System.Object,System.String,System.Type,System.Object,System.String,System.Collections.ArrayList)">
            <summary>
            Writes an object to xml. This will write 
            1) the type and assembly of the object to write
            2) xml attributes for all properties of the object which can be written as xml attributes
            3) xml elements for all other properties (this this method is called recursively)
            </summary>
            <param name="writer">The xml stream</param>
            <param name="target">The object to be written</param>
            <param name="parent">The object in the xml stream, which is associated with the xml parent element</param>
            <param name="targetProperty">Type of the object</param>
            <param name="expectedType">Type expected </param>
            <param name="root">Object associated with the top of the xml stream</param>
            <param name="parentName">Name of the xml parent tag</param>
            <param name="writtenObjects">List of all object written so far in this xml stream</param>
            <exception cref="T:System.Exception">Cannot derive key for object which must be written as a reference. Probably MetaInfo is missing for the class and subject XmlKey</exception>exception&gt;
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.ToString(System.Object,System.IO.DirectoryInfo)">
            <summary>
            Gets the string representing an object.
            This string value is used for writing the object in an xml file.
            </summary>
            <param name="target">The object a string value is requested for</param>
            <param name="directory">Directory, which is used in case of files. Then the relative file path is returned</param>
            <returns>The string representation</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetSortedProperties(Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate)">
            <summary>
            Gets all properties of an aggregate in a sorted way.
            MetaInfo attribute "XmlIndex" is used for the sorting.
            </summary>
            <param name="aggregate">The aggregate</param>
            <returns>Sorted property names</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetElementName(System.Type,System.String,System.Boolean)">
            <summary>
            Gets the xml element name for a specific property
            </summary>
            <param name="type">The class type containing the property</param>
            <param name="property">The property to write</param>
            <param name="reference">Identifies whether the property is to be written completely or just a reference, because the property has been written before</param>
            <returns>The xml element name</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.DifferentFiles(System.Object,System.Object)">
            <summary>
            Indicates whether two objects are written in the same file. 
            This should occur when 1) the root of this object isn't the same as the root writing at this moment
            or 2) the object is declared that it should be written in it's own file. 
            The root is the object at the top of the xml file
            </summary>
            <param name="target">First object</param>
            <param name="root">Second object</param>
            <returns>Indication same file</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.PropertyWrite(System.Type,System.String,System.Boolean)">
            <summary>
            Indicates whether a property should be written
            </summary>
            <param name="type">The class type of the object containing the property</param>
            <param name="property">The property to write</param>
            <param name="reference">Identifies whether the property is to be written completely or just a reference, because the property has been written before</param>
            <returns>Boolean indicating whether the property is to be written</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetSingleName(System.String)">
            <summary>
            Gets the single word given a plural word.
            For example, plural word "variables" would return "variable".
            </summary>
            <param name="parentName">The plural word</param>
            <returns>The single word, "Item" if nothing specific can be derived</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetProperty(Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate,System.String)">
            <summary>
            Gets the property given a specific xml element name
            </summary>
            <param name="target">The object which will contain the property</param>
            <param name="name">The xml element name</param>
            <returns>The property name, null if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.IsAttribute(System.Type)">
            <summary>
            Indicates whether an object can be written as an xml attribute (instead of an xml element)
            </summary>
            <param name="targetType">The class type of the object which should be written</param>
            <returns>Indication of writable as xml attribute</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile.GetTempFile(System.IO.DirectoryInfo)">
            <summary>
            Gets a temporary file.
            When writing an xml file, first a temporary file is used and later it is moved to the actually intended file.
            In this way the original file is left untouched when an exception occurs.
            </summary>
            <param name="TempDirectory">The directory where the temp file should be located</param>
            <returns>The temporary file</returns>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.CalendarConverter">
            <summary>
            Support class for conversions between DateTime objects and Modified Julian Dates
            Modified Julian Date is the number of days since November 17, 1858.
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.CalendarConverter.Gregorian2ModifiedJulian(System.DateTime)">
            <summary>
            Converts a DateTime object to modified julian date
            </summary>
            <param name="gregorianDate">DateTime object</param>
            <returns>Modified Julian Date (days since November 17, 1858)</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.CalendarConverter.ModifiedJulian2Gregorian(System.Double)">
            <summary>
            Converts a modified julian date to a DateTime object
            </summary>
            <param name="modifiedJulianDate">Modified Julian Date (days since November 17, 1858)</param>
            <returns>DateTime object</returns>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.FileSupport">
            <summary>
            This class provides some static methods to handle relative paths to files
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.FileSupport.GetRelativePath(System.IO.DirectoryInfo,System.IO.FileInfo)">
            <summary>
            Gets the relative path from a starting directory to a file
            </summary>
            <param name="baseDirectory">Starting point</param>
            <param name="targetFile">File to refer to</param>
            <returns></returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.FileSupport.GetRelativePath(System.IO.DirectoryInfo,System.IO.DirectoryInfo)">
            <summary>
            Gets the relative path from a starting directory to a directory
            </summary>
            <param name="baseDirectory">Starting point</param>
            <param name="targetDir">Directory to refer to</param>
            <returns></returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.FileSupport.GetRelativeDir(System.Collections.ArrayList,System.Collections.ArrayList)">
            <summary>
            Gets the relative path given the base and target
            </summary>
            <param name="baseDir">Array of directories for the base directory</param>
            <param name="target">Array of directories for the target file or directory</param>
            <returns>The relative path</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.FileSupport.GetDirectoryArray(System.IO.DirectoryInfo)">
            <summary>
            Returns an array of all directories in a path. The first directory is the highest directory in the path.
            </summary>
            <param name="Directory">Directory from which to generate the array</param>
            <returns>ArrayList containing all directories. Each element is a DirectoryInfo object</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.FileSupport.ExpandRelativePath(System.IO.DirectoryInfo,System.String)">
            <summary>
            Expands a relative path to a FileInfo object
            </summary>
            <param name="baseDirectory">The directory from which the relative path is defined</param>
            <param name="targetFile">The relative path</param>
            <returns>FileInfo object corresponding to the base directory and relative path</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.FileSupport.ExpandRelativeDirectory(System.IO.DirectoryInfo,System.String)">
            <summary>
            Expands a relative path to a DirectoryInfo object
            </summary>
            <param name="baseDirectory">The directory from which the relative path is defined</param>
            <param name="targetDir">The relative path</param>
            <returns>DirectoryInfo object corresponding to the base directory and relative path</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.FileSupport.GetRelativePath(System.String,System.String)">
            <summary>
            Generates relative path by path.
            </summary>
            <param name="dirPath"></param>
            <param name="filePath"></param>
            <returns></returns>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport">
            <summary>
            Number of methods for general operations on objects. They comprise:
            1.	instantiating objects given a class name
            2.	deep copy of objects
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.GetCopy(System.Object)">
            <summary>
            Gets a deep copy of a specified object.
            Deep copying copies all primitive and enumeration properties and the properties for which MetaInfo "ObjectCopy" is set to true
            </summary>
            <param name="source">The object to be copied</param>
            <returns>The copied object</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.GetCopy(System.Object,System.String)">
            <summary>
            Gets a deep copy of a specified object and copies referenced files
            Deep copying copies all primitive and enumeration properties and the properties for which MetaInfo "ObjectCopy" is set to true
            </summary>
            <param name="source">The object to be copied</param>
            <param name="path">The path in which copied files will be positioned (relative to original position)</param>
            <returns>The copied object</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.GetCopy(System.Object,System.Collections.Hashtable,System.String)">
            <summary>
            Creates an object which is a deep copy fo a source object, including copying of referenced file
            Deep copying copies all primitive and enumeration properties and the properties for which MetaInfo "ObjectCopy" is set to true
            </summary>
            <param name="source">The object to be copied</param>
            <param name="copiedObjects">Lookup table for already copied objects</param>
            <param name="path">Path where files are copied to</param>
            <returns></returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.Copy(System.Object,System.Object)">
            <summary>
            Deep copies all properties of source into the properties of target
            Deep copying copies all primitive and enumeration properties and the properties for which MetaInfo "ObjectCopy" is set to true
            </summary>
            <param name="source">The source object</param>
            <param name="target">The target object</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.Copy(System.Object,System.Object,System.String)">
            <summary>
            Deep copies all properties of source into the properties of target, including files
            Deep copying copies all primitive and enumeration properties and the properties for which MetaInfo "ObjectCopy" is set to true
            </summary>
            <param name="source">The source object</param>
            <param name="target">The target object</param>
            <param name="path">Path where files are copied to</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.Copy(System.Object,System.Object,System.Collections.Hashtable,System.String)">
            <summary>
            Gets the deep copy
            </summary>
            <param name="source">The object to be copied</param>
            <param name="target">The object which will be the copy</param>
            <param name="copiedObjects">Collection of objects and their copied equivalents. Will be populated and queried during copy.</param>
            <param name="path">Relative path to location where copied files will reside</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.Copy(System.Object,System.Object,System.Collections.Hashtable,System.String,System.Boolean)">
            <summary>
            Gets the deep copy
            </summary>
            <param name="source">The object to be copied</param>
            <param name="target">The object which will be the copy</param>
            <param name="copiedObjects">Collection of objects and their copied equivalents. Will be populated and queried during copy.</param>
            <param name="path">Relative path to location where files will be copied to</param>
            <param name="copyValue">Indicates whether the new object should refer to a copy or to the same object</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.CopyFile(System.IO.FileSystemInfo,System.String)">
            <summary>
            Gets a copy of a file.
            If the file doesn't exist, the copied file will not exist neither.
            </summary>
            <param name="fileSystem">The file or directory to be copied</param>
            <param name="path">The relative path (starting from the location of the original file) to the directory where the file will be copied to</param>
            <returns>The copied file</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.LoadAssembly(System.String)">
            <summary>
            Loads an assembly.
            The assembly name can be either a full path to a file or a full or partial name of an assembly registered in the GAC.
            An empty assembly name is ignored.
            </summary>
            <param name="assemblyName">The assembly name</param>
            <exception cref="T:System.Exception">Assembly cannot be found in the GAC</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.LoadAssembly(System.Reflection.Assembly)">
            <summary>
            Loads an assembly.
            </summary>
            <param name="assembly">The assembly</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.IsLoadedAssembly(System.Reflection.Assembly)">
            <summary>
            Tells whether an assembly has been loaded already.
            </summary>
            <param name="assembly">The assembly</param>
            <returns>Indication of loaded</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.GetType(System.String)">
            <summary>
            Gets the class object given a string describing the class. The following assemblies are queried:
            1.	All assemblies loaded with ObjectSupport.LoadAssembly
            2.	All assemblies which reside in the same directory as this assembly
            </summary>
            <param name="ClassType">The class name, including path with namespaces</param>
            <returns>The class object or null if not found</returns>
            <exception cref="T:System.Exception">Class cannot be found</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.GetInstance(System.String)">
            <summary>
            Creates a new object. 
            Types with an argumentless constructor can be created this way
            </summary>
            <param name="classType">Full class name of the object to be instantiated</param>
            <returns>New object, null if not possible</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.GetInstance(System.String,System.Object)">
            <summary>
            Creates a new object using a base value (e.g. a string with its value).
            Normally primitives, enumerations and some value types can be instantiated this way.
            Also types with constructors having one argument can be instantiated.
            </summary>
            <param name="classType">Full class name of the object to be instantiated</param>
            <param name="baseValue">Value which is passed as argument to the constructor</param>
            <returns>New object, null if not possible</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.GetInstance(System.Type)">
            <summary>
            Creates a new object. 
            Types with an argumentless constructor can be created this way
            </summary>
            <param name="type">Class type of the object to be instantiated</param>
            <returns>New object, null if not possible</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.GetInstance(System.Type,System.Object)">
            <summary>
            Creates a new object using a base value (e.g. a string with its value).
            Normally primitives, enumerations and some value types can be instantiated this way.
            Also types with constructors having one argument can be instantiated.
            </summary>
            <param name="type">Class type of the object to be instantiated</param>
            <param name="baseValue">Value which is passed as argument to the constructor</param>
            <returns>New object, null if not possible</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.ObjectSupport.GetInstance(System.Type,System.Object,System.Globalization.CultureInfo)">
            <summary>
            Creates a new object using a base value (e.g. a string with its value).
            Normally primitives, enumerations and some value types can be instantiated this way.
            Also types with constructors having one argument can be instantiated.
            </summary>
            <param name="type">Class type of the object to be instantiated</param>
            <param name="baseValue">Value which is passed as argument to the constructor</param>
            <param name="culture">Culture info used for parsing the base value</param>
            <returns>New object, null if not possible</returns>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate">
            <summary>
            Implementation of IAggregate which is based on reflection.
            This class is used by XmlFile as default
            <seealso cref="T:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate"/>
            </summary>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate">
            <summary>
            This interface allows generic querying of an object's properties.
            An aggregate serves as an "in between" object between a source (containing the actual information) and a querier (asking for properties, e.g. XmlFile).
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate.GetType(System.String)">
            <summary>
            Gets the class type of one of the properties
            </summary>
            <param name="property">Property name</param>
            <returns>The property type</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate.CanWrite(System.String)">
            <summary>
            Tells whether a value can be assigned to the property
            </summary>
            <param name="property">Property name</param>
            <returns>Boolean indicating writable</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate.CanRead(System.String)">
            <summary>
            Tells whether a value can be retrieved from the property
            </summary>
            <param name="property">Property name</param>
            <returns>Boolean indicating readable</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate.GetValue(System.String)">
            <summary>
            Gets the value of a property
            </summary>
            <param name="property">Property name</param>
            <returns>The property value</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate.SetValue(System.String,System.Object)">
            <summary>
            Sets the value of a property
            </summary>
            <param name="property">Property name</param>
            <param name="target">The new property value</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate.GetReferencedValue(System.String)">
            <summary>
            Gets a property value by reference.
            A reference isn't necessary a property, but can be any string, as long as it can be interpreted by the aggregate
            </summary>
            <param name="reference">Reference</param>
            <returns>The referenced value</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate.UpdateSource">
            <summary>
            Tells the aggregate to process all information passed with SetValue calls
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate.UpdateAggregate">
            <summary>
            Tells the aggregate to prepare for subsequent GetValue calls
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate.Source">
            <summary>
            The underlying object which holds the actual information.
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate.Properties">
            <summary>
            List of properties which can be queried in a generic way
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate.#ctor(System.Object)">
            <summary>
            Constructor which gets the underlying source object
            </summary>
            <param name="source">The underlying source object</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate.GetType(System.String)">
            <summary>
            Gets the class type of a property by reflection
            </summary>
            <param name="property">The property name</param>
            <returns>The type of the property</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate.CanWrite(System.String)">
            <summary>
            Indicates whether a property can be written to. Reflection is used.
            </summary>
            <param name="property">The property name</param>
            <returns>Property is writable, false if property doesn't exist</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate.CanRead(System.String)">
            <summary>
            Indicates whether a property can be read. Reflection is used.
            </summary>
            <param name="property">The property name</param>
            <returns>Property is readable, false if property doesn't exist</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate.GetValue(System.String)">
            <summary>
            Gets a value for a certain property. Reflection is used.
            </summary>
            <param name="property">The property name</param>
            <returns>The property value, null if the property doesn't exist</returns>
            <exception cref="T:System.Exception">Internal exception raised by the source object when getting the value</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate.SetValue(System.String,System.Object)">
            <summary>
            Sets a value for a certain property. Reflection is used.
            </summary>
            <param name="property">The property name</param>
            <param name="target">The new property value</param>
            <exception cref="T:System.Exception">Internal exception raised by the source object when setting the value</exception>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate.GetReferencedValue(System.String)">
            <summary>
            Gets a referenced value, i.e. a value corresponding with a reference string within the scope of the source.
            Implementation is delegated to XmlFile.GetRegisteredTarget.
            </summary>
            <param name="reference">Reference</param>
            <returns>The referenced object</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate.UpdateSource">
            <summary>
            Intended for updating the source after various SetValue calls.
            Takes no action, because all SetValue calls are delegated directly to the source object with reflection.
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate.UpdateAggregate">
            <summary>
            Intended for updating the aggregate before various GetValue calls.
            Takes no action, because all GetValue calls are delegated directly to the source object with reflection.
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate.Source">
            <summary>
            Gets the underlying source object
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.DevelopmentSupport.DefaultAggregate.Properties">
            <summary>
            Gets a list of all properties defined in the class type of the source.
            Reflection is used to get this list.
            </summary>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.CollectionSupport">
            <summary>
            Support class for collections
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.CollectionSupport.ContainsObject(System.Collections.ICollection,System.Object)">
            <summary>
            Indicates whether an object is contained by a collection by comparing references.
            The Equals method is not used, in contrary with the Contains method in the ArrayList.
            </summary>
            <param name="collection">The collection</param>
            <param name="target">The object which might be in the collection</param>
            <returns></returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.CollectionSupport.ToArray(System.Collections.IList)">
            <summary>
            Converts a collection to an array
            </summary>
            <param name="list">The collection</param>
            <returns>The array</returns>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo">
            <summary>
            This class registers extra information about classes and (optionally) properties in your application.
            For example, information about how to write a property of a class into an xml file can be stored here.
            This mechanism has great similarities with the attribute mechanism in the .Net framework, but differences are that
            1) entries can be set dynamically
            2) no code modification is necessary in the target classes (the classes for which information is stored)
            </summary>
            <example>
            <c> MetaInfo.SetAttribute (typeof(ILinkableComponent), "XmlFile", true); </c>
            Tells that the interface ILinkableComponent has subject XmlFile, which has corresponding value true.
            There must be another class which knows that subject XmlFile exists and uses this information in some way.
            <c>	MetaInfo.SetAttribute (typeof(IElementSet), "ID", "XmlRefName", "RefID"); </c>
            Tells that the property ID in the interface IElementSet has subject XmlRefName, which has corresponding value "RefID".
            </example>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.Write(System.IO.FileInfo)">
            <summary>
            Writes all metainfo to a file
            </summary>
            <param name="file">The file</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.Read(System.IO.FileInfo)">
            <summary>
            Reads all metainfo from file
            </summary>
            <param name="file">The file</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.Initialize">
            <summary>
            Sets metainfo about the xml file where meta info is saved in
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.GetEntry(System.String)">
            <summary>
            Gets all metainfo concerning a given class
            </summary>
            <param name="target">The class name</param>
            <returns>All metainfo about a class, null if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.GetEntryForced(System.String)">
            <summary>
            Gets all metainfo concerning a given class and creates an empty block if not found
            </summary>
            <param name="target">The class name</param>
            <returns>All metainfo about a class</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.SetAttribute(System.Object,System.String,System.Object)">
            <summary>
            Stores information about a class
            </summary>
            <param name="target">The class about which information is stored (usually as class type or string)</param>
            <param name="subject">The type of information (e.g. how the class is named in an xml file)</param>
            <param name="targetValue">The actual value</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.SetAttribute(System.Object,System.String,System.String,System.Object)">
            <summary>
            Stores information about a class and property
            </summary>
            <param name="target">The class about which information is stored (usually as class type or string)</param>
            <param name="property">The property in the class</param>
            <param name="subject">The type of information (e.g. how the property is named in an xml file)</param>
            <param name="targetValue">The actual value</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.GetAttribute(System.Type,System.String)">
            <summary>
            Gets the stored information for a class.
            Not only the class is examined, but also all superclasses and implemented interfaces.
            </summary>
            <param name="target">The class about which information will be retrieved</param>
            <param name="subject">The type of information required</param>
            <returns>The information stored for this object and type of information, null if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.GetAttribute(System.Type,System.String,System.String)">
            <summary>
            Gets the stored information for a class and property.
            Not only the class is examined, but also all superclasses and implemented interfaces.
            </summary>
            <param name="target">The class type about which information will be retrieved</param>
            <param name="property">The property for which information is to be required</param>
            <param name="subject">The type of information required</param>
            <returns>The information stored for the class and property, null if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.GetAttributeDefault(System.Type,System.String,System.Object)">
            <summary>
            Gets the stored information for a class.
            Not only the class is examined, but also all superclasses and implemented interfaces.
            </summary>
            <param name="targetClass">The object about which information will be retrieved</param>
            <param name="subject">The type of information required</param>
            <param name="defaultValue">Default value if the information is not found</param>
            <returns>The information stored for this object and type, the default value if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.GetAttributeDefault(System.Type,System.String,System.String,System.Object)">
            <summary>
            Gets the stored information for a class and property.
            Not only the class is examined, but also all superclasses and implemented interfaces.
            </summary>
            <param name="targetClass">The object about which information will be retrieved</param>
            <param name="property">The property in the class</param>
            <param name="subject">The type of information required</param>
            <param name="defaultValue">Default value if the information is not found</param>
            <returns>The information stored for this class, property and type, the default value if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.GetAttributeDefault(System.Reflection.Assembly,System.String,System.Object)">
            <summary>
            Gets the stored information for an assembly.
            </summary>
            <param name="targetAssembly">The assembly about which information will be retrieved</param>
            <param name="subject">The type of information required</param>
            <param name="defaultValue">Default value if the information is not found</param>
            <returns>The information stored for this class, property and type, the default value if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.GetAttributeDefault(System.String,System.String,System.Object)">
            <summary>
            Gets the stored information for a string
            </summary>
            <param name="target">The string about which information will be retrieved</param>
            <param name="subject">The type of information required</param>
            <param name="defaultValue">Default value if the information is not found</param>
            <returns>The information stored for this class, property and type, the default value if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfo.GetProperties(System.Type)">
            <summary>
            Gets a list of all properties in a class, for which a value has been stored.
            All superclasses and implemented interfaces of the class are examined too.
            </summary>
            <param name="targetClass">The class</param>
            <returns>List of properties</returns>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.EntryList">
            <summary>
            Special list for all entered information in MetaInfo
            </summary>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry">
            <summary>
            Class which groups all information stored for a class in MetaInfo
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry.#ctor(System.String)">
            <summary>
            Default constructor
            </summary>
            <param name="className">The class</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry.GetMetaInfo(System.String)">
            <summary>
            Gets a group of subjects and associated values for a property in the class
            </summary>
            <param name="property">The property</param>
            <returns>Group of subjects and associated values</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry.GetProperties">
            <summary>
            Gets a list of all properties for which a value is stored
            </summary>
            <returns>The list of properties</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry.GetValue(System.String)">
            <summary>
            Gets the stored value directly under a class for a certain subject
            </summary>
            <param name="subject">The subject</param>
            <returns>The stored value, null if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry.SetValue(System.String,System.Object)">
            <summary>
            Gets the stored value directly under a class for a certain subject
            </summary>
            <param name="subject">The subject</param>
            <param name="targetValue">The new value</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry.GetValue(System.String,System.String)">
            <summary>
            Gets the stored value for a subject and property in the class
            </summary>
            <param name="property">The property</param>
            <param name="subject">The subject</param>
            <returns>The stored value, null if not found</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry.SetValue(System.String,System.String,System.Object)">
            <summary>
            Stores a new value for a subject and property in the class
            </summary>
            <param name="property">The property</param>
            <param name="subject">The subject</param>
            <param name="targetValue">The new value</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry.Contains(System.String,System.String)">
            <summary>
            Tells whether a value is stored for a property and subject in the class
            </summary>
            <param name="property">The property name</param>
            <param name="subject">The subject</param>
            <returns>Indication of presence of the property and subject</returns>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry.ClassName">
            <summary>
            Class for which information is stored
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry.Class">
            <summary>
            Group of subjects and stored values directly under the class (so without properties)
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoEntry.Properties">
            <summary>
            List of all properties for which a value is stored
            </summary>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClass">
            <summary>
            Class which groups all information about a property of a class type in MetaInfo
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClass.#ctor(System.String)">
            <summary>
            Default constructor
            </summary>
            <param name="property">Property name</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClass.Contains(System.Object)">
            <summary>
            Indication whether a subject is stored
            </summary>
            <param name="subject">The subject</param>
            <returns>Indication whether the subject is stored</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClass.GetProperties">
            <summary>
            Gets a list of all subjects stored for this property.
            </summary>
            <returns>List of all subjects</returns>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClass.Name">
            <summary>
            The property name for which information is stored
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClass.Item(System.Object)">
            <summary>
            Dictionary of all subjects and stored values.
            The index specified the subject.
            </summary>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate">
            <summary>
            Aggregate class for MetaInfoClass.
            Used when writing and reading with XmlFile.
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate.#ctor(System.Object)">
            <summary>
            Aggregate for the meta info class
            An aggregate is an "in between" object between the element set and XmlFile.
            <seealso cref="T:Oatc.OpenMI.Sdk.DevelopmentSupport.IAggregate"></seealso>/&gt;
            <seealso cref="T:Oatc.OpenMI.Sdk.DevelopmentSupport.XmlFile"></seealso>/&gt;
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate.GetType(System.String)">
            <summary>
            Class type of a property
            </summary>
            <param name="property">The property name</param>
            <returns>The property type</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate.CanWrite(System.String)">
            <summary>
            Tells whether a property can be written
            </summary>
            <param name="property">The property name</param>
            <returns>Indication of writable</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate.CanRead(System.String)">
            <summary>
            Tells whether a property can be read
            </summary>
            <param name="property">The property name</param>
            <returns>Indication of readable</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate.GetValue(System.String)">
            <summary>
            Gets the value of a property
            </summary>
            <param name="property">The property name</param>
            <returns>The property value</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate.SetValue(System.String,System.Object)">
            <summary>
            Sets a value for a certain property
            </summary>
            <param name="property">The property name</param>
            <param name="target">The new property value</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate.UpdateSource">
            <summary>
            Updates the underlying source. Takes no action.
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate.UpdateAggregate">
            <summary>
            Prepares the aggregate for subsequent GetValue calls. Takes no action.
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate.GetReferencedValue(System.String)">
            <summary>
            Gets a referenced value, i.e. a value corresponding with a reference string within the scope of the source.
            Implementation is delegated to XmlFile.GetRegisteredTarget.
            </summary>
            <param name="reference">Reference</param>
            <returns>The referenced object</returns>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate.Source">
            <summary>
            Gets the underlying object
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.DevelopmentSupport.MetaInfoClassAggregate.Properties">
            <summary>
            Gets a list of properties which are accessed in a generic way.
            </summary>
        </member>
    </members>
</doc>
